import tkinter as tk
from tkinter import messagebox
from db import db  # 导入db对象
from MainPage import Main

class  LoginPage:
    #初始化布局
    def __init__(self, master):
        self.root = master
        self.root.geometry('300x180')
        self.root.title('学生管理系统管理员登录界面')

        # 获取账号和密码的数据
        self.username = tk.StringVar()
        self.password = tk.StringVar()


        self.page = tk.Frame(self.root)
        self.page.pack()

        tk.Label(self.page).grid(row=0, column=0)
        # pady是上下边距
        tk.Label(self.page,text='账户: ').grid(row=1, column=1, pady=10)
        tk.Entry(self.page, textvariable =self.username).grid(row=1, column=2)

        tk.Label(self.page,text='密码: ').grid(row=2, column=1,pady=10)
        tk.Entry(self.page, textvariable =self.password).grid(row=2, column=2)


        tk.Button(self.page, text='登录', command=self.login).grid(row=3, column=1, pady=10)
        tk.Button(self.page, text='退出', command=self.login).grid(row=3, column=2, pady=10)



    #登录函数
    def login(self):
        name = self.username.get()
        pwd = self.password.get()
        flag, message = db.check_login(name, pwd)
        if flag:
            # 将当前页清空
            self.page.destroy()
            # 加载第二个页面
            Main(self.root)
        else:
            messagebox.showwarning(title='警告信息', message=message)




if __name__ == '__main__':
    root = tk.Tk()
    LoginPage(master=root)
    root.mainloop()